An inkjet type printer known in the art has a print head provided with a plurality of nozzle groups corresponding to inks of a plurality of colors and prints a color image by ejecting ink droplets of a plurality of colors onto a printing medium from the nozzle groups while scanning in a main scanning direction. This type of printer can print an image corresponding to a band-like unit printing region (band region) having the same width as a nozzle width (length of a nozzle group) in one scan of the print head. In order to print an image onto a printing region having a larger size than one band region, print of the image of the unit band region is repeated while shifting a position of the printing medium in a sub-scanning direction. Further, printing speed can be improved by executing bidirectional printing in which printing is performed by means of both a main scanning operation of the print head in a first direction and main scanning operation thereof in a second direction as compared to unidirectional printing in which printing is performed by means of a main scanning operation in only one direction.
Even though it is intended to express the same color, a difference in a printing direction can express different colors. Specifically, different colors can be expressed between first-direction main scanning operation and second-direction main scanning operation. That is, the difference in the printing direction changes an ink overlapping order, with the result that the observed color may differ among observers. In order to reduce a possibility of occurrence of this phenomenon, there is proposed a technique that calculates an index value concerning an estimated ink amount for each of a plurality of blocks in the band region and determines a specific one direction as the scanning direction when the index value is more than a threshold value. The above-mentioned phenomenon is recognizable at a boundary of the band region, so that there is proposed a technique that uses, as a threshold for a boundary block positioned near the boundary of the band region, a value less than a threshold for an internal block positioned separated from the boundary of the band region.